package com.qzdsoft.erpcloud.service.pu;

import java.util.List;

import com.qzdsoft.erpcloud.domain.pu.PurchaseInquiry;
import com.qzdsoft.erpcloud.vo.pu.PurchaseInquiryEditInfo;
import com.qzdsoft.erpcloud.vo.pu.PurchaseInquiryInfo;
import com.qzdsoft.erpcloud.vo.pu.PurchaseInquiryQueryInfo;
import com.qzdsoft.vo.LayTableResponse;
import com.qzdsoft.vo.Response;

/**
 * 
 * simple introduction
 *
 * <p>detailed comment
 * @author hulehui Aug 28, 2017
 * @see
 * @since 1.0
 */
public interface PurchaseInquiryService {
	
	
	/**
	 * 更加指定条件查询采购询价单
	 * @param info
	 * @return
	 */
	LayTableResponse<PurchaseInquiryInfo> findPurchaseInquirysBy(PurchaseInquiryQueryInfo info);

	/**
	 * 展示单个采购询价单
	 * @param id
	 * @return
	 */
	PurchaseInquiryInfo findPurchaseInquiryBy(Integer id);
	
	/**
     * 采购询价单新增
     * @param info
     * @return
     */
    Response<String> add(PurchaseInquiryEditInfo info);
	
    /**
     * 采购询价单删除
     * @param id
     * @return
     */
    Response<String> remove(Integer id);
    
	/**
	 * 修改采购询价单
	 * @param info
	 * @return
	 */
	Response<String> edit(PurchaseInquiryEditInfo info);

	/**
     * 采购询价单审核
     * @param id
     * @return
     */
    Response<PurchaseInquiryInfo> reivew(Integer uid,Integer id);

    /**
     * 采购询价单弃审
     * @param id
     * @return
     */
    Response<PurchaseInquiryInfo> cancelReview(Integer uid,Integer id);
    
    /**
     * 采购询价单关闭
     * @param id 采购订单id
     * @return
     */
    Response<String> close(Integer id);
   
    /**
     * 查询已审核的采购询价单
     * @param record
     * @return
     */
    List<PurchaseInquiry> selectReviewOrderByCompanyId(PurchaseInquiry record);
}
